home *** CD-ROM | disk | FTP | other *** search
Text File | 2000-05-03 | 9.9 KB | 218 lines | [TEXT/XMLA] |
- <!-- this is the CARD (Commerce Accelerated Relational Data) schema version 1.0 -->
- <!-- Copyright (C) 2000, infoShark, inc. -->
- <!-- The main goal of this schema is to provide a common means for
- describing a relational database's structure and data so that
- relational databases, non-relational data stores, and software
- applications could easily consume it. Documents adhering to
- this schema can provide all the necessary information to recreate
- relational databases and populate them with their data. This
- information includes such things as primary/foreign key
- relationships, indices, and native datatypes. A secondary
- goal of this XML schema is to provide a simple mechanism for
- specifying the price of individual data points (the data found
- in a given row and column). It is infoShark's vision that
- this schema would further facilitate the extraction,
- transformation, and loading of data across various
- Web-enabled products. -->
-
- <!ELEMENT card (dbStructures? , existingData? , alterData? )>
- <!ATTLIST card name CDATA #REQUIRED
- distributer CDATA #REQUIRED
- currencyValue CDATA #REQUIRED
- currencyCode CDATA #REQUIRED
- description CDATA #REQUIRED >
- <!ELEMENT dbStructures (dbStructure+ )>
- <!ATTLIST dbStructures currencyValue CDATA #IMPLIED
- currencyCode CDATA #IMPLIED
- description CDATA #IMPLIED >
- <!ELEMENT dbStructure (dbSchemata )>
- <!ATTLIST dbStructure name CDATA #REQUIRED
- author CDATA #IMPLIED
- dbType CDATA #IMPLIED
- dbVersion CDATA #IMPLIED
- extractDatetime CDATA #REQUIRED
- currencyValue CDATA #IMPLIED
- currencyCode CDATA #IMPLIED
- description CDATA #IMPLIED >
- <!ELEMENT dbSchemata (dbSchema+ )>
-
- <!ELEMENT dbSchema (tables , indices , sequences )>
- <!ATTLIST dbSchema name CDATA #REQUIRED
- author CDATA #IMPLIED
- currencyValue CDATA #IMPLIED
- currencyCode CDATA #IMPLIED
- description CDATA #IMPLIED
- structureRecreationFile CDATA #IMPLIED >
- <!ELEMENT tables (table* )>
-
- <!ELEMENT table (columns , keys , checkConstraints )>
- <!ATTLIST table name CDATA #REQUIRED
- author CDATA #IMPLIED
- currencyValue CDATA #IMPLIED
- currencyCode CDATA #IMPLIED
- description CDATA #IMPLIED >
- <!ELEMENT columns (column+ )>
-
- <!-- Here is a listing of where each of the datatypes originated
- oracle datatypes:
- bfile, blob, char, clob, date, decimal, float, integer, long, long-raw, long-varchar, mlslabel, nchar, nclob, nvarchar2, number, raw, raw-mlslabel, rowid, smallint, user-defined, varchar, varchar2
-
- sqlserver datatypes:
- binary, bit, char, datetime, decimal, float, image, int, money, numeric, real, smalldatetime, smallint, smallmoney, text, timestamp, tinyint, user-defined, varbinary, varchar
-
- access datatypes:
- autonumber, currency, date-time, hyperlink, lookup-wizard, memo, numbers, ole-object, text, yes-no
- -->
-
- <!ELEMENT column EMPTY>
- <!ATTLIST column name CDATA #REQUIRED
- linkName ID #REQUIRED
- nativeType (autonumber |
- bfile |
- binary |
- bit |
- blob |
- char |
- clob |
- currency |
- date |
- datetime |
- date-time |
- decimal |
- float |
- hyperlink |
- image |
- int |
- integer |
- long |
- long-raw |
- long-varchar |
- lookup-wizard |
- memo |
- mlslabel |
- money |
- nchar |
- nclob |
- number |
- numbers |
- numeric |
- nvarchar2 |
- ole-object |
- raw |
- raw-mlslabel |
- real |
- rowid |
- smalldatetime |
- smallint |
- smallmoney |
- text |
- timestamp |
- tinyint |
- user-defined |
- varbinary |
- varchar |
- varchar2 |
- yes-no ) #REQUIRED
- precision CDATA #IMPLIED
- scale CDATA #IMPLIED
- length CDATA #IMPLIED
- defaultValue CDATA #IMPLIED
- nullable (yes | no ) #REQUIRED
- commonName CDATA #IMPLIED
- currencyValue CDATA #IMPLIED
- currencyCode CDATA #IMPLIED
- description CDATA #IMPLIED >
- <!ELEMENT keys (primaryKey? , foreignKey* , uniqueKey* )>
-
- <!ELEMENT primaryKey (columnLink+ )>
- <!ATTLIST primaryKey name CDATA #REQUIRED
- linkName ID #REQUIRED
- enabled (yes | no ) #REQUIRED >
- <!ELEMENT columnLink EMPTY>
- <!ATTLIST columnLink columnLinkName IDREF #REQUIRED >
- <!ELEMENT foreignKey (columnLink+ )>
- <!ATTLIST foreignKey name CDATA #REQUIRED
- keyLinkName IDREF #REQUIRED
- enabled (yes | no ) #REQUIRED
- cascadeDelete (yes | no ) #REQUIRED >
- <!ELEMENT uniqueKey (columnLink+ )>
- <!ATTLIST uniqueKey name CDATA #REQUIRED
- linkName ID #REQUIRED
- enabled (yes | no ) #REQUIRED >
- <!ELEMENT checkConstraints (checkConstraint* )>
-
- <!ELEMENT checkConstraint (checkConstraintValue , columnLink+ )>
- <!ATTLIST checkConstraint name CDATA #REQUIRED
- enabled (yes | no ) #REQUIRED >
-
- <!ELEMENT checkConstraintValue (#PCDATA )>
- <!ATTLIST checkConstraintValue language CDATA #IMPLIED >
-
- <!ELEMENT indices (index* )>
-
- <!ELEMENT index (columnLink+ )>
- <!ATTLIST index name CDATA #REQUIRED
- unique (yes | no ) #REQUIRED
- sorting (yes | no ) #REQUIRED
- order (ascending | descending ) #REQUIRED >
- <!ELEMENT sequences (sequence* )>
-
- <!ELEMENT sequence (#PCDATA )>
- <!ATTLIST sequence name CDATA #REQUIRED
- startingValue CDATA #REQUIRED
- endingValue CDATA #REQUIRED
- stepValue CDATA #REQUIRED
- cycle (yes | no ) #REQUIRED >
- <!ELEMENT existingData (rows+ )>
- <!ATTLIST existingData currencyValue CDATA #IMPLIED
- currencyCode CDATA #IMPLIED
- description CDATA #IMPLIED >
- <!ELEMENT rows (row* )>
- <!ATTLIST rows dbStructureName CDATA #REQUIRED
- dbSchemaName CDATA #REQUIRED
- tableName CDATA #REQUIRED
- currencyValue CDATA #IMPLIED
- currencyCode CDATA #IMPLIED
- description CDATA #IMPLIED >
-
- <!ELEMENT row (columnValue+ )>
- <!ATTLIST row uniqueID ID #REQUIRED
- currencyValue CDATA #IMPLIED
- currencyCode CDATA #IMPLIED
- description CDATA #IMPLIED >
- <!ELEMENT columnValue (#PCDATA )>
- <!ATTLIST columnValue columnName CDATA #REQUIRED
- isNull (yes | no ) #REQUIRED
- currencyValue CDATA #IMPLIED
- currencyCode CDATA #IMPLIED
- description CDATA #IMPLIED >
-
- <!ELEMENT alterData (data+ )>
- <!ATTLIST alterData currencyValue CDATA #IMPLIED
- currencyCode CDATA #IMPLIED
- description CDATA #IMPLIED >
- <!ELEMENT data (insertData* , deleteData* , updateData* )>
- <!ATTLIST data dbStructureName CDATA #REQUIRED
- dbSchemaName CDATA #REQUIRED
- tableName CDATA #REQUIRED
- currencyValue CDATA #IMPLIED
- currencyCode CDATA #IMPLIED
- description CDATA #IMPLIED >
-
- <!ELEMENT insertData (columnValue+ )>
- <!ATTLIST insertData currencyValue CDATA #IMPLIED
- currencyCode CDATA #IMPLIED
- description CDATA #IMPLIED >
- <!ELEMENT deleteData (columnValue* )>
- <!ATTLIST deleteData currencyValue CDATA #IMPLIED
- currencyCode CDATA #IMPLIED
- description CDATA #IMPLIED >
- <!ELEMENT updateData (columnValue+ , previousData? )>
- <!ATTLIST updateData currencyValue CDATA #IMPLIED
- currencyCode CDATA #IMPLIED
- description CDATA #IMPLIED >
- <!ELEMENT previousData (columnValue+ )>
- <!ATTLIST previousData currencyValue CDATA #IMPLIED
- currencyCode CDATA #IMPLIED
- description CDATA #IMPLIED >
-